// 这个是解析role角色的函数
export function decodeJwtPayload(token) {
    // JWT 由三部分组成，用"."分隔
    const parts = token.split('.');
    if (parts.length !== 3) {
        throw new Error('Invalid token structure');
    }

    // 载荷是 JWT 的第二部分
    const payloadBase64 = parts[1];

    // 对 Base64 编码的载荷进行 URL 安全的解码
    const payloadRaw = window.atob(payloadBase64);

    try {
        // 将解码后的载荷解析为 JSON 对象
        const payload = JSON.parse(payloadRaw);

        // 提取需要的信息
        const id = payload.id;
        const name = payload.name;
        const authorities = payload.authorities;

        // 返回一个包含用户信息的对象
        return {
            id,
            name,
            authorities
        };
    } catch (error) {
        // 如果 JSON 解析失败，则抛出错误
        throw new Error('Error parsing JWT payload:', error);
    }
}